package com.pentakill.mo.essay.essay.business.ebi;

import java.util.List;

import org.hibernate.criterion.DetachedCriteria;

import com.pentakill.mo.auth.user.vo.UserModel;
import com.pentakill.mo.essay.discuss.vo.DiscussModel;
import com.pentakill.mo.essay.essay.vo.EssayModel;
import com.pentakill.mo.essay.essay.vo.EssayQueryModel;
import com.pentakill.mo.util.base.BaseEbi;
import com.pentakill.mo.util.base.BaseQueryModel;

public interface EssayEbi extends BaseEbi<EssayModel>{
	/**
	 * 创建一个新的评论
	 * @param user	 用户
	 * @param uuid	文章uuid
	 * @param dm 	评论实体
	 */
	public  void createDiscuss(UserModel user, Integer uuid, DiscussModel dm);
	/**
	 * 评论一个评论 
	 * 注意评论实体中的uuid是接受自想要评论的uuid 必须用完置为空
	 * @param user 	用户
	 * @param uuid 	文章uuid
	 * @param dm   	评论实体
	 */
	public void replyDiscuss(UserModel user, Integer uuid, DiscussModel dm);
	/**
	 * 修改文章状态
	 * @param em 文章实体包含uuid 用于查询文章
	 * @param status 状态 
	 */
	public void update(EssayModel em, Integer status);
	
	/**
	 * 查询通过审核的文章
	 * @param qm
	 * @return
	 */
	public EssayModel getByPass(BaseQueryModel eqm);
	/**
	 * 查询文章列表和查询按条件查询
	 * @param eqm 查询条件
	 * @param pageNum
	 * @param pageCount
	 * @return
	 */
	public List<EssayModel> getShowPassLlis(BaseQueryModel eqm, Integer pageNum, Integer pageCount);
	/**
	 * 查询通过审核的文章总数
	 * @param eqm
	 * @return 
	 */
	public int getPassCount(BaseQueryModel eqm);
}
